package com.luych.toolbox.common.feign.view.docker.service;

import com.luych.toolbox.common.enums.DockerServerStatus;
import com.luych.toolbox.common.feign.FeignView;
import com.luych.toolbox.common.feign.view.base.service.UserView;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel("宿主机数据返回")
public class DockerServerView extends FeignView {

    @ApiModelProperty("名称")
    private String name;
    @ApiModelProperty("URL")
    private String url;
    @ApiModelProperty("状态")
    private DockerServerStatus status;
    @ApiModelProperty("Docker版本")
    private String dockerVersion;
    @ApiModelProperty("存储驱动")
    private String storageDriver;
    @ApiModelProperty("日志驱动")
    private String loggingDriver;
    @ApiModelProperty("CGroup驱动")
    private String cgroupDriver;
    @ApiModelProperty("内核版本")
    private String kernelVersion;
    @ApiModelProperty("操作系统")
    private String operatingSystem;
    @ApiModelProperty("架构")
    private String architecture;
    @ApiModelProperty("CPU配置")
    private Integer cpu;
    @ApiModelProperty("内存配置")
    private Long memory;
    @ApiModelProperty("内存配置（HumanRead）")
    private String memoryHumanRead;
    @ApiModelProperty("责任人")
    private UserView owner;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public DockerServerStatus getStatus() {
        return status;
    }

    public String getStatusValue() {
        return status == null ? null : status.getValue();
    }

    public void setStatus(DockerServerStatus status) {
        this.status = status;
    }

    public String getDockerVersion() {
        return dockerVersion;
    }

    public void setDockerVersion(String dockerVersion) {
        this.dockerVersion = dockerVersion;
    }

    public String getStorageDriver() {
        return storageDriver;
    }

    public void setStorageDriver(String storageDriver) {
        this.storageDriver = storageDriver;
    }

    public String getLoggingDriver() {
        return loggingDriver;
    }

    public void setLoggingDriver(String loggingDriver) {
        this.loggingDriver = loggingDriver;
    }

    public String getCgroupDriver() {
        return cgroupDriver;
    }

    public void setCgroupDriver(String cgroupDriver) {
        this.cgroupDriver = cgroupDriver;
    }

    public String getKernelVersion() {
        return kernelVersion;
    }

    public void setKernelVersion(String kernelVersion) {
        this.kernelVersion = kernelVersion;
    }

    public String getOperatingSystem() {
        return operatingSystem;
    }

    public void setOperatingSystem(String operatingSystem) {
        this.operatingSystem = operatingSystem;
    }

    public String getArchitecture() {
        return architecture;
    }

    public void setArchitecture(String architecture) {
        this.architecture = architecture;
    }

    public Integer getCpu() {
        return cpu;
    }

    public void setCpu(Integer cpu) {
        this.cpu = cpu;
    }

    public Long getMemory() {
        return memory;
    }

    public void setMemory(Long memory) {
        this.memory = memory;
    }

    public String getMemoryHumanRead() {
        return memoryHumanRead;
    }

    public void setMemoryHumanRead(String memoryHumanRead) {
        this.memoryHumanRead = memoryHumanRead;
    }

    public UserView getOwner() {
        return owner;
    }

    public String getOwnerId() {
        return owner == null ? null : owner.getId();
    }

    public void setOwner(UserView owner) {
        this.owner = owner;
    }
}
